Instantaneous Termination in Pure Esterel
نویسندگان
چکیده
Esterel is a design language for the representation of embedded systems. Based on the synchronous reactive paradigm, its execution relies on a clear distinction of instants of computation. As a consequence, deciding whether a piece of a program may or may not run instantaneously is central to any compilation scheme, both for correctness and efficiency. In general, this information can be obtained by an exhaustive exploration of all possible execution paths, which is expensive. Most compilers approximate it through algorithmic methods amenable to static analysis. In our contribution, we first formalize the analysis involved in detecting statements that may run instantaneously. Then, we identify statements that may terminate and be instantaneously reentered. This allows us to model precisely these compilers front-end activities with a clear mathematical specification and led us to uncover inefficiencies in the Esterel v5 academic compiler from Ecole des Mines and INRIA.
منابع مشابه
The Semantics of Pure Esterel
We present a survey of the main semantics of Pure Esterel, the communication kernel of the Esterel synchronous reactive language. We start by an informal presentation of the Pure Esterel language. We then present the be-havioral semantics that deenes the language. We deene the notion of a haltset that corresponds to a distributed program counter. Using haltsets, we show that Pure Esterel progra...
متن کاملInstantaneous Transitions in Esterel
Esterel is an imperative synchronous programming language for the specification of deterministic concurrent reactive systems. While providing the usual control-flow constructs—sequences, loops, conditionals, and exceptions—its lack of a goto instruction makes the programming of arbitrary finite state machines awkward and hinders the design of source-to-source program transformations. We previou...
متن کاملA Solution to the Generalized Railroad Crossing Problem in ESTEREL
We present a solution to the Generalized Railroad Crossing benchmark problem based on the ESTEREL programming language. The solution is shown to satisfy the formal statements of the properties that the system requirements specify by using a verification method for safety properties of ESTEREL programs recently developed. The solution and verification presented have been developed within the syn...
متن کاملThe ESTEREL language - Proceedings of the IEEE
We present the basics of the ESTEREL reactive model of synchronous parallel systems. We illustrate the ESTEREL programming style, based on “instantaneous communications and decisions ’’ through the example of a mouse handler. We briefly describe the ESTEREL formal semantics and show how programs can be compiled into finite states sequential machines for efJicient execution. The up to date imple...
متن کاملA Hardware Implementation of Pure EsterelG
Esterel is a synchronous concurrent programming language dedicated to reactive systems (controllers, protocols, man-machine interfaces, etc.). Esterel has an eecient standard software implementation based on well-deened mathematical semantics. We present a new hardware implementation of the pure synchronization subset of the language. Each program generates a speciic circuit that responds to an...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003